package com.tsingteng.cosfun.ui.message.geneal.model;

import com.tsingteng.cosfun.bean.DataBean;
import com.tsingteng.cosfun.bean.FollowBean;
import com.tsingteng.cosfun.bean.ParagraphComment;
import com.tsingteng.cosfun.bean.PlayBean;
import com.tsingteng.cosfun.bean.PlayCommont;
import com.tsingteng.cosfun.bean.PlayDetailsBean;
import com.tsingteng.cosfun.bean.PullBlackBean;
import com.tsingteng.cosfun.bean.UserBean;
import com.tsingteng.cosfun.callback.RxObserver;

import java.util.List;

import retrofit2.Callback;

/**
 * 描述 :
 * 创建人: 肖利.
 * 时间:2018/8/8
 * qq(872179966)
 */

public interface IPlayModel {

    /**
     * 便当列表
     * @param pageSize
     * @param callback
     */
    void getPlayList(String pageNo, String pageSize, RxObserver<PlayBean> callback);

    /**
     * 便当详情
     * @param paragraphId
     * @param callback
     */
    void getPlayDetails(String paragraphId,RxObserver<PlayDetailsBean> callback);

    /**
     * 便当详情评论列表
     * @param paragraphId
     * @param currentPage
     * @param count
     * @param callback
     */
    void getPlayDetailsCommontList(String paragraphId,String currentPage,String count,RxObserver<PlayCommont> callback);

    /**
     * 便当添加

     * @param content
     * @param callback
     */
    void getAddPlay(String content,RxObserver<String> callback);

    /**
     * 便当删除

     * @param paragraph_id
     * @param callback
     */
    void getDelPlay(String paragraph_id,RxObserver<String> callback);

    /**
     * 添加不喜欢的便当

     * @param paragraph_id
     * @param callback
     */
    void getAddNotLikePlay(String paragraph_id,RxObserver<String> callback);

    /**
     * 段子或者评论点赞或取消点赞 点赞类型0-段子 1-段子评论或回复

     * @param id
     * type
     * @param callback
     */
    void getPraiseOrNot(String praise_type,String id,String type,RxObserver<Integer> callback);
    /**
     * 观看便当时长
     *
     *
     */
    void getDataLongTime(String start_time,String time_length,RxObserver<DataBean> callback);

    /**
     *  //评价段子或回复  评论类型0-便当 1-段子
     * @param paragraph_id
     * @param comment_type
     * @param content
     * @param comment_object_id
     * @param callback
     */
    void getAddPlayComment(String paragraph_id,String comment_type,String content,String comment_object_id,RxObserver<ParagraphComment> callback);

    /**
     * 关注

     * @param id
     * type
     * @param callback
     */
    void getFollowNotification(String follow_id,RxObserver<FollowBean> callback);

    /**
     * 取消关注

     * @param id
     * type
     * @param callback
     */
    void getNoFollowNotification(String follow_id,RxObserver<FollowBean> callback);
    /**
     * 取消拉黑
     */
    void getCancelPullBlackInfo(long user_id, Callback<PullBlackBean> workCallback);
}
